package iiris

import (
	"gitee.com/tietang/terrace-go/v2/base"
	"github.com/iris-contrib/middleware/cors"
	"github.com/kataras/iris/v12"
)

type IrisCorsStarter struct {
	base.BaseStarter
}

func (s *IrisCorsStarter) Setup(ctx base.StarterContext) {
	Iris().AllowMethods(iris.MethodOptions)
	Iris().Use(cors.AllowAll())
	//iiris.Iris().Use(func(ctx iris.Context) {
	//	//不使用 *，自动适配跨域域名，避免携带Cookie时失效
	//	origin := ctx.GetHeader("Origin")
	//	if origin != "" {
	//		ctx.Header("Access-Control-Allow-Origin", origin)
	//	}
	//	// 允许跨域的请求方法类型
	//	ctx.Header("Access-Control-Allow-Methods", "*")
	//	// 预检命令（OPTIONS）缓存时间，单位：秒
	//	ctx.Header("Access-Control-Max-Age", "3600")
	//	// 明确许可客户端发送Cookie，不允许删除字段即可
	//	ctx.Header("Access-Control-Allow-Credentials", "true")
	//	//ctx.Header("Access-Control-Allow-Headers", "*")
	//	ctx.Header("Access-Control-Allow-Headers", "Content-Type, Accept, Authorization")
	//	fmt.Println(ctx.Request().Method)
	//	if ctx.Request().Method == http.MethodOptions {
	//		ctx.StatusCode(http.StatusNoContent)
	//		return
	//	}
	//	ctx.Next()
	//
	//})
}
